#目录操作
'''
需要导入os模块

文件重命名：os.rename
删除文件：os.remove
创建文件夹：os.mkdir
获取当前目录：os.getcwd
删除文件夹：os.rmdir

'''
#1.文件重命名 rename('原名','新名')
import os
#os.rename(r'C:\Users\sea_0\Desktop\silicon\sixstar.txt',r'C:\Users\sea_0\Desktop\silicon\sixstar123.txt')

#2.文件夹的创建
#import os
os.mkdir(r'C:\Users\sea_0\Desktop\silicon\sixstar-will')

#3.删除文件夹
os.rmdir(r'C:\Users\sea_0\Desktop\silicon\sixstar-will')

#4.删除文件 remove()

#5.获取当前目录
#print(os.getcwd)

#6.改变默认目录
#os.chdir('../')   #返回上一级目录

#7.获取目录的文件列表
#print(os.listdir) #获取当前目录的文件列表


'''============================================================================================================='''

#编码
with open(r'C:\Users\sea_0\Desktop\silicon\test0409.py','w',encoding='utf-8') as f:
    f.write('#编码测试文档，哈哈哈哈哈\n')
#有非法编码报UnicodeDecodeError错误时，在open()函数中加一个参数errors
with open(r'C:\Users\sea_0\Desktop\silicon\test0409.py','a',encoding='utf-8',errors='ignore') as f:
    f.write('#编码测试文档，呵呵呵呵呵\n')
    f.write('#编码测试文档，嘿嘿嘿嘿嘿\n')
    f.write('#编码测试文档，哎哎哎哎哎\n')
    f.write('#编码测试文档，咯咯咯咯咯\n')
    f.write('#编码测试文档，咦咦咦咦咦')


'''============================================================================================================='''

#读数据readline & readlines
'''
readline 方法可以一次读取一行内容，方法执行后，会把文件指针移到下一行，准备再次读取。
'''
with open(r'C:\Users\sea_0\Desktop\silicon\test0409.py',encoding='utf-8') as f:
    while True:
        text = f.readline() #读取一行内容
        if not text:        #判断是否读到内容
            break
        print(text,end='')  #不换行
#with open 会自动关闭文件
print('\n')
'''
readlines 可以按照行的方式把整个文件中的内容进行一次性读取，并返回的是一个列表，
其中每一行的数据是一个元素。

'''
f = open(r'C:\Users\sea_0\Desktop\silicon\test0409.py',encoding='utf-8')
con = f.readlines()
print(con)      #内容是列表的形式，一行为一个元素
f.close()
